The transmission of data (such as media data) from a source device to a sink device requires the establishment of a data stream between the source device and the sink device, and possibly through one or more intermediary devices. In a network with known, established, or static topologies, the characteristics of each node within the network can be analyzed, and the data path through which the data stream is established can be selected based on this analysis. However, in networks with an unknown or variable topology, the composition of the network (such as the number of nodes, the characteristics of each node, the interconnections between the nodes, and the like) is unknown to any single node or is subject to change, limiting the ability to identify the optimal data path from a source device to a sink device. In addition, different types of data streams are associated with different priorities. For example, for data streams associated with video games, stream latency is prioritized over stream bandwidth, while for high definition video, stream bandwidth is prioritized over stream latency. Accordingly, selecting an optimal data path and establishing a corresponding data stream in a network with unknown topology requires the discovery of the network composition and an analysis of the networking composition and characteristics of network nodes in view of data stream priorities.